home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part2 / 16645 < prev    next >
Encoding:
Internet Message Format  |  1996-08-05  |  3.0 KB

  1. Path: news.wwa.com!rmartin
  2. From: rmartin@oma.com (Robert C. Martin)
  3. Newsgroups: comp.object,comp.lang.c++,comp.realtime,comp.dcom.telecom.tech,comp.arch.embedded
  4. Subject: Re: Can OO be successful in real-time embedded systems?
  5. Followup-To: comp.object,comp.lang.c++,comp.realtime,comp.dcom.telecom.tech,comp.arch.embedded
  6. Date: 11 Apr 1996 16:44:11 GMT
  7. Organization: Object Mentor
  8. Message-ID: <RMARTIN.96Apr11114411@rcm.oma.com>
  9. References: <316BF0C5.1FE1@condat.de> <dibaldDpnpBH.5Et@netcom.com>
  10. NNTP-Posting-Host: rcm.oma.com
  11. In-reply-to: dibald@netcom.com's message of Wed, 10 Apr 1996 17:16:29 GMT
  12.  
  13. In article <dibaldDpnpBH.5Et@netcom.com> dibald@netcom.com (Dave Baldwin) writes:
  14.  
  15.    Object-dis-oriented programming is (like some others) intended to hide 
  16.    the hardware from the programmer.  
  17.  
  18. This is not quite correct.  The intention of OO is not to hide the
  19. hardware from the programmer.  The intention of OO is to provide tools
  20. to the programmer whereby he can manipulate the hardware at varying
  21. levels of abstraction.  If he wants to twiddle the bits, he can
  22. go right ahead and do so, even in OO.  If he would rather deal at a
  23. higher level of abstraction, he can use OO to create that level. 
  24.  
  25. OO is a tool, not a religion, and not a philosophy.
  26.  
  27.    How useful can this possibly be when 
  28.    small embedded systems are expressly for dealing with the hardware?  Some 
  29.    of the techniques can be useful, but the overhead and 'hiding' is exactly 
  30.    what you don't need in hardware control.
  31.  
  32. Incorrect.  The overhead is minimal (arguably zero), and if the
  33. engineer chooses to hide something, he must feel there is something to
  34. hide.  Example:  When controlling a modem in order to dial a phone
  35. number, one could twiddle the bits every time you need to dial, or one
  36. can hide the bit twiddling in a function, and call the function
  37. whenever you need to dial.
  38.  
  39. If you have two different kinds of modems, one could always check a
  40. flag to make sure you are calling the right function, or one could
  41. create an OO interface so that you don't care which type of modem you
  42. are controlling.
  43.  
  44.    There is no universal programming method.  
  45.  
  46. Granted.
  47.  
  48.    I'd bet that the software that operates the networks and switches isn't
  49.    done in 'OO' for the same reasons.  
  50.  
  51. Actually, a lot of it is.   I have clients in the telecom industry who
  52. are using OO/C++ in their switches and network managers, etc.
  53.  
  54.    Last time I looked at the cards in a
  55.    telephone network bay, I saw thousands of 8032's doing the hardware
  56.    control.  There were one or two of them on each interface card in a 
  57.    network terminal that had tens-of-thousands of telephone lines passing 
  58.    thru it.
  59.  
  60. I don't know about 8032's.  However, some of my clients are using
  61. C++/OOD in motorola based microcontrollers (68000 based)....
  62.  
  63.  
  64.  
  65. --
  66. Robert Martin       | Design Consulting   | Training courses offered:
  67. Object Mentor Assoc.| rmartin@oma.com     |   OOA/D, C++, Advanced OO
  68. 14619 N. Somerset Cr| Tel: (847) 918-1004 |   Mgt. Overview of OOT
  69. Green Oaks IL 60048 | Fax: (847) 918-1023 | http://www.oma.com
  70.  
  71.